Rotary encoder and rotation mechanism including the same

ABSTRACT

A rotary encoder includes two first detection units disposed at positions that are symmetrical about a rotation axis, each of the first detection units outputting an incremental signal, and second detection unit that outputs an absolute signal φ A . The rotary encoder includes a storage unit that stores a plurality of formulas for correcting errors of the incremental signals, the formulas being different from each other in accordance with the signal φ A , and the errors being generated due to eccentricity; a calculation unit that calculates a corrected phase φ I  by performing operation on the incremental signals by using one of the formulas corresponding to the signal φ A ; and a generation unit that generates a rotation angle of the scale on the basis of the phase φ I  and the signal φ A .

FIELD OF THE INVENTION

The present invention relates to an absolute rotary encoder that detects a rotation angle on the basis of an absolute signal and an incremental signal, with higher precision than on the basis of only the absolute signal.

DESCRIPTION OF THE RELATED ART

Some existing rotary encoders include a sensor and a scale that rotates relative to the sensor, the scale having a pattern having a center that coincides with the center of rotation, and detect the rotation angle of the scale by detecting a change in the pattern by using the sensor.

In such an encoder, if the center of the pattern is deviated from the center of rotation, the detected angle includes an eccentric error, which is a periodic error having a characteristic of a sinusoidal wave having a period for one rotation. Therefore, it is necessary to take measures against the eccentric error in order to detect the rotation angle with high precision. However, in reducing the deviation of the center of the pattern from the center of rotation, a problem arises in that the precision of the components and the precision of assembling have to be increased and thereby the cost may be increased. With consideration of the characteristic of the eccentric error, a method corrects the eccentric error by averaging rotation angles obtained by two sensors disposed at positions that are symmetrical about the rotation center.

There are two types of encoder, that is, incremental encoders and absolute encoders. Some absolute encoders detect an angular position with high precision by using an incremental signal, which represents a high-precision relative rotation amount, and an absolute signal, which represents an angular position within one rotation.

PTL 1 describes a rotary encoder that includes sensors disposed at positions that are symmetrical about a shaft axis, which is the center of rotation of a code plate. The rotary encoder corrects an eccentric error and detects a rotation angle using an absolute signal and an incremental signal. The encoder includes a code plate that is disposed between a light source and a photodetector array including four photoelectric conversion elements. Slits and light-shielding portions are alternately arranged on the code plate, which is connected to a shaft axis. The encoder generates two incremental signals sin φ and cos φ by using signals that are obtained by the four photoelectric conversion elements, and calculates a phase angle φ by making the two signals be addresses of a ROM.

When two sets of light sources and the photodetector arrays are disposed so as to face each other with a rotation axis therebetween, incremental signals obtained by the two photoconductor arrays can be represented by sin (φ+δ) and cos (φ+δ), and sin (φ−δ) and cos (φ−δ), where δ denotes an eccentric error. A phase angle φ is calculated by using two signals that are respectively the sum of sin (φ+δ) and sin (φ−δ) and the sum of cos (φ+δ) and cos (φ−δ), so that the influence of the eccentric error is cancelled.

CITATION LIST Patent Literature

-   PTL 1: Japanese Patent Laid-Open No. 5-099693

SUMMARY OF INVENTION

In the structure described in PTL 1, the value of the eccentric error δ periodically changes, and the range of the change depends on the deviation of the center of slits from the center of rotation (eccentricity) and the pitch of the slits formed in the code plate. At a certain angular position, δ=π/2 if ε≦λ/2, where ε is the eccentricity, and λ is the pitch of the slits. In this case, the phase angle cannot be calculated because sin (φ+π/2)+sin (φ−π/2)=0 and cos (φ+π/2)+cos (φ−π/2)=0. This situation occurs because the phases of the two incremental signals, which are detected by two sets of sensors, are shifted from each other by one period. Even if the eccentricity ε<λ/2, the two signals sin (φ+δ)+sin (φ−δ) and cos (φ+δ)+cos (φ−δ) are small if δ is close to π/2, so that the precision may decrease.

Therefore, with the structure described in PTL 1, it is necessary to make the eccentricity ε be in the range such that ε<λ/2. An aspect of the present invention is to correct the eccentric error while allowing a wider range of deviation.

A rotary encoder according to the present invention uses different formulas for correcting an eccentric error in accordance with the value of an absolute signal when calculating the phase of one incremental signal, whose eccentric error is corrected, by using the phases of two incremental signals that are output by two detection units and that include eccentric errors.

According to another aspect of the present invention, a rotary encoder includes a detection unit, and a scale that is rotatable relative to the detection unit, the scale having a pattern for detecting a rotation angle, wherein the detection unit includes two first detection units and second detection unit, the two first detection units being disposed at positions that are symmetrical about a center of the rotation, each of the first detection units outputting an incremental signal having a plurality of periods for one rotation of the scale, and the second detection unit outputting an absolute signal corresponding to a rotation angle of the scale within one rotation of the scale, and wherein the rotary encoder detects a relative rotation angle of the scale based on phases of the two incremental signals and a value of the absolute signal, the phases of the two incremental signals being detected by the two first detection units, the rotary encoder including a storage unit that stores a plurality of formulas for correcting errors of the incremental signals, the formulas being different from each other in accordance with the value of the absolute signal, and the errors being generated due to deviation of the center of the rotation from a center of the pattern; a calculation unit that calculates a corrected phase of an incremental signal by performing an operation on the phases of the two incremental signals by using one of the formulas corresponding to the value of the absolute signal that is output from the second detection unit; and a generation unit that generates the rotation angle of the scale on the basis of the corrected phase of the incremental signal and the value of the absolute signal.

Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram of an encoder according to an embodiment of the present invention.

FIGS. 2A to 2D are schematic views illustrating the positional relationship between a track and sensors when eccentricity exists.

FIGS. 3A to 3E are graphs illustrating the relationship between a rotation angle and the phase of an incremental signal when eccentricity exists.

FIG. 4 illustrates formulas according to the aforementioned embodiment of the present invention.

FIG. 5 illustrates a table that is stored in a storage unit according to the present invention.

FIG. 6 is a graph illustrating the relationship between the rotation angle of a scale and the phase difference in the incremental signals according to the present invention.

DESCRIPTION OF EMBODIMENTS

A rotary encoder according to an embodiment of the present invention will be described next.

First, the structure of the rotary encoder according to the embodiment of the present invention will be described.

FIG. 1 is a block diagram of the rotary encoder according to the embodiment of the present invention. Referring to FIG. 1, the rotary encoder includes a scale 1, two first sensor units (first detection unit) 21 and 22, a second sensor unit (second detection unit) 23, a storage unit (storage unit) 3, and a controller 4.

A first track 11 and a second track 12 are formed on the scale 1. As the first track 11 rotates, incremental signals are output from the two first sensor units 21 and 22. As the second track 12 rotates, an absolute signal is output from the second sensor unit 23. The controller 4 performs an operation on the signals, which are output by the first and second sensor units 21, 22, and 23, by using a formula stored in the storage unit 3 to calculate a rotation angle (rotation amount) of the scale. When the scale 1 is attached to a test object, the scale 1 rotates together with the test object. Therefore, the rotation angle of the test object can be detected by detecting the rotation angle of the scale 1 by using the first and second sensor units.

The two first sensor units 21 and 22 are disposed at positions that are symmetrical about the rotation center of the scale 1. The second sensor unit 23 may be disposed at any position with respect to the first sensor units 21 and 22. In the present embodiment, the second sensor unit 23 is disposed at 90 degrees with respect to the first sensor units 21 and 22 around the rotation axis.

Next, detection of the rotation angle, and the operation of outputting an angle will be described.

The first track 11 includes reflective portions having slit-like shapes and non-reflective portions having slit-like shapes. The reflective portions and the non-reflective portions are alternately arranged at a regular pitch. Each of the two first sensor units 21 and 22 includes a light source (not shown) and a photodetector (not shown), and detects a change in the position at which a light beam, which is emitted by the light source and reflected by the reflective portions of the first track 11, is incident on the photodetector. Each of the two first sensor units 21 and 22 generates a two-phase sinusoidal signal (incremental signal) of sin φ and cos φ having a plurality of periods for one rotation of the scale.

The track 12 includes reflective portions having slit-like shapes and non-reflective portions having slit-like shapes. The reflections portions and the non-reflective portions are arranged in an M-series pattern. As with the first sensor units 21 and 22, the second sensor unit 23 includes a light source (not shown) and a photodetector (not shown), and detects a change in the position at which a light beam, which is emitted by the light source and reflected by the reflective portions of the second track 12, is incident on the photodetector. The second sensor unit 23 outputs an M-series signal (absolute signal) that corresponds to a rotation angle of the scale 1 within one rotation.

An A/D converter 41 and an arctan calculator 43 respectively perform A/D conversion and arctan calculation on the two-phase sinusoidal signal generated by the sensor unit 21 so as to convert the two-phase sinusoidal signal to a phase signal φ₁ of the incremental signal. In the same manner, an A/D converter 42 and an arctan calculator 44 process the two-phase sinusoidal signal generated by the sensor unit 22 so as to convert the two-phase sinusoidal signal to a phase signal φ₂.

A signal generator 45 converts the M-series signal (absolute signal) generated by the sensor unit 23 to a signal φ_(A) having a value that represents an angular position. The signal φ_(A) is input to a formula selector 46, and one formula is selected from a plurality of formulas stored in the storage unit 3 on the basis of the value of C.

Referring to FIG. 5, the storage unit 3 stores a table of the relationship between the range of the actual rotation angle θ and the formula. It is assumed that the value of the signal φ_(A), which is generated on the basis of the absolute signal, is an actual rotation angle θ, and a formula that corresponds to φ_(A) is selected from the table. FIG. 4 illustrates formulas 1 to 4 according to the present embodiment.

The formula selected by the formula selector 46 and the phase signals φ₁ and φ₂ are input to a formula calculator (calculation unit) 47. By inputting the values of φ₁ and φ₂ to the formula and performing calculation, a phase signal φ_(I), for which the eccentric error has been corrected, is obtained as a calculation result.

Lastly, the value of the signal φ_(A) and the value of the phase signal φ_(I) are input to an encoder output angle generator (generation unit) 48, which performs an operation on the values of φ_(A) and φ_(I), whereby an encoder output angle, (i.e., the rotation angle of the scale), is generated and output. The encoder output angle is calculated by using the following equations (1) and (2): n=CEIL(φ_(A) /p)  (1) θ_(out) =p×(n−1)+φ_(I)  (2),

where p is an angle for one pitch of the slits of the first track 11, θ_(out) is the encoder output angle, and n is a number that represents a period to which φ_(I) belongs assuming that φ_(I) belongs to the first period if the value of φ_(A) is 0. CEIL(x) represents the smallest integer that is equal to or larger than x. Thus, the encoder output angle can be detected and output.

Next, the principle behind the correction of an eccentric error according to the present invention will be described.

FIGS. 2A to 2D illustrate the positional relationship between the first track 11 and the sensor units 21 and 22 in a state in which eccentricity exists and the center of pattern is deviated from the center of rotation. In the figure, (•) represents the center of rotation, and (x) represents the center of the pattern of the slits. Referring to FIGS. 2A to 2D, when the scale rotates clockwise, the relationship between the rotation center (•) and the pattern center (x) changes in the order of FIGS. 2A, 2B, 2C, 2D, and 2A.

Let θ_(a), θ_(b), θ_(c), and θ_(d) respectively denote the rotation angles for the positional relationships illustrated in FIGS. 2A, 2B, 2C, and 2D. FIGS. 3A, 3B, 3C, and 3D respectively illustrate the relationship among φ₁, φ₂, and φ_(I) around θ_(a), θ_(b), θ_(c), and θ_(d). In each of the graphs, a dotted line represents φ₁ a solid line represents θ₂, and a broken line represents φ_(I). As illustrated in FIGS. 3A to 3D, if the eccentricity exists, the phase shift between φ₁ and φ₂ changes in accordance with the rotation angle. Assuming that that phase of the signal φ_(I) is between the phase of φ₁ and the phase of φ₂, the value of signal φ_(I) is equal to either (φ₁+φ₂)/2 or (φ₁+φ₂)/2 shifted by ±π, depending on the shift between the period of φ₁ and the period of φ₂.

FIG. 3E illustrates the relationship among φ₁, φ₂, and (φ₁+φ₂)/2 around θ_(b). In the figure, an alternate long and short dash line represents (φ₁+φ₂)/2. As can be seen by comparing FIG. 3B with FIG. 3E, when the angle is around θ_(b), φ_(I) is equal to (φ₁+φ₂)/2 shifted by π if φ₁>φ₂ and the angle is smaller than θ_(b), and equal to (φ₁+φ₂)/2 shifted by π if φ₁>φ₂ and the angle is equal to or larger than θ_(b). As illustrated in FIG. 3D, when the angle is around θ_(d), φ_(I) is equal to (φ₁+φ₂)/2 shifted by it if φ₂>φ₂ and the angle is smaller than θ_(d), and equal to (φ₁+φ₂)/2 shifted by π if φ₂>φ₁ and the angle is equal to or larger than θ_(d).

Likewise, when the angle is around θ_(a), φ_(I) is equal to (φ₁+φ₂)/2 shifted by ±π if φ₂>φ₁ and the angle is equal to or large than θ_(a), and equal to (φ₁+φ₂)/2 shifted by ±π if φ₁>φ2 and the angle is smaller than θ_(a). When the angle is around θ_(c), φ_(I) is equal to (φ₁+φ₂)/2 shifted by ±π if φ₁>φ₂ and the angle is equal to or large than θ_(c), and equal to (φ₁+φ₂)/2 shifted by ±π if φ₂>φ₂ and the angle is smaller than θ_(c).

In order to suppress an error at the boundary condition, it is preferable that the range for which shifting by ±π is performed be determined by using the following four conditions: φ₁≧φ₂, φ₁≦φ₂, |φ₁−φ₂|≧π, and |φ₁−φ₂|≦π. For example, in a case in which φ₁≧φ₂ and φ₁≦φ₂ are the ranges for which shifting by ±π is to be performed, if shifting by ±π is mistakenly performed in the range φ₁≦φ₂ instead of in the range φ₁≧φ₂, an erroneous result may be obtained. Such an error may be suppressed by adding a condition for performing shifting by ±π, such as |φ₁−φ₂|≧π or |φ₁−φ₂|≦π, so as to stagger the boundaries.

The conditions for the range for which shifting by ±π is performed is associated with the rotation angle θ as long as the state of eccentricity does not change. Therefore, the present embodiment uses formulas that are combinations of the calculation of (φ₁+φ₂)/2 and the calculation of shifting a signal by ±π as illustrated in FIG. 4, and stores a table that represents the correspondence between the range of rotation angle and the formula, which is illustrated in FIG. 5, in the storage unit 3.

Next, an operation of initializing the table stored in the storage unit will be described.

Using the signal φ_(A) as an input, a reset processor (reset unit) 49 outputs a reset signal if the value of the signal φ_(A) is 0 and resets the values of the counters (count unit) 410 and 411 to be 0. Counters 410 and 411 respectively count the periodicity of sinusoidal incremental signals that are input from the first sensor units 21 and 22. Each of the counters increments the value of the counter by one when a rotational displacement of one slit in a normal direction is detected, and decrements the value of the counter by one when a rotational displacement of one slit in a reverse direction is detected. In the present embodiment, the value of the counter is incremented and decremented by detecting a zero-cross of sin φ when cos φ of the two-phase sinusoidal signal has a positive value.

An accumulated phase calculator (accumulated phase calculation unit) 412 calculates an accumulated phase φ_(1A) using the phase signal φ₁ and the value of the counter 410. φ_(1A) can be represented by expression (3) using φ₁, where m₁ is the value of the counter 410. φ₁ A=φ ₁ +m ₁×2π  (3)

Likewise, an accumulated phase calculator (accumulated phase calculation unit) 413 calculates an accumulated phase φ_(2A). φ_(2A) can be represented by expression (4) using φ₂, where m₂ is the value of the counter 411. φ₂ A=φ ₂ +m ₂×2π  (4)

Using the accumulated phases φ_(1A) and φ_(2A) as inputs, a phase difference calculator (phase difference calculation unit) 414 calculates a phase difference Φ by using expression (5), and calculates the rotation angle θ at that moment by using expression (6). N is the number of slits of the first track 11. (One slit is a pair of one reflective portion and one non-reflective portion.) Φ=φ_(1A)−φ_(2A)  (5) θ=((φ_(1A)+φ_(2A))/2)/N  (6)

FIG. 6 illustrates the relationship between Φ and θ, which is obtained by rotating the scale 1 and calculating the phase difference Φ and the rotation angle θ at a plurality of positions. Because the condition for the range for which shifting by ±π is performed corresponds to Φ, the relationship between the formula and the range of the rotation angle θ can be compiled in a table by using the relationship between Φ and θ.

In the present embodiment, formula 1 is allocated to the range −π/2+4π×i≦Φ<π/2+4π×i, formula 2 is allocated to the range π/2+4π×i≦Φ<3π/2+4π×i, formula 3 is allocated to the range 3π/2+4π×i≦Φ<5π/2+4π×i, and formula 4 is allocated to the range 5π/2+4π×i≦Φ<7π/2+4π×i, where i is an arbitrary integer. Therefore, when Φ and θ have the relationship illustrated in FIG. 6, the range formula 1 is allocated to 0≦θ<θ₁, formula 2 is allocated to the range θ₁≦θ<θ₂, etc., so that a table illustrated in FIG. 5 can be compiled.

Lastly, the table that has been compiled is stored in the storage unit 3.

By performing the processing described above, information to be stored in the storage unit are determined, and the storage unit can be initialized when the encoder is attached to a test object. Alternatively, the table may be initialized while the encoder is detecting the angle, so that the storage unit may be dynamically updated.

A rotary encoder according to an embodiment the present invention has been described above. However, the present invention is not limited to the above-described embodiment, and may be realized in other structures.

According to the embodiment described above, the optical encoder is a reflective optical encoder including a sensor unit, which includes a light source and a photodetector, and a reflective scale. However, other types of optical encoders may be used. For example, an optical encoder using a transmissive scale or a magnetic encoder may be used.

In the embodiment described above, the absolute signal is obtained by using a track (second track) having an M-series pattern. However, other methods may be used. For example, a plurality of regular-pitch tracks having different number of slits may be used to output a plurality of incremental signals, and an absolute signal may be generated by using phase difference signals of the incremental signals.

In the embodiment described above, two sensor units for detecting the first track are provided. However, three or more sensor units may be provided, and the rotation angle of the scale may be calculated by using incremental signals obtained by the sensor units.

In the embodiment described above, the scale rotates, and the scale and the sensor units rotate relative to each other. However, in alternative examples of the present invention, the sensor unit may rotate.

In the embodiment described above, the range for shifting the value of (φ₁+φ₂)/2 by ±π is determined by using four condition s: (φ₁≧φ₂, φ₁≦φ₂, |φ₁−φ₂|≧π, and |φ₁−φ₂|≦π. However, in alternative examples of the present invention, the signal φ_(I) can be generated by using at least one of the conditions.

In the embodiment described above, in order to store the plurality of formulas in the storage unit 3, the controller 4 includes the reset processor 49, the counters 410 and 411, the accumulated phase calculators 412 and 413, and the phase difference calculator 414. However, such elements do not need to be included in the controller 4. Desired formulas can be stored, for example, in the storage unit 3 by using such elements as external elements of the encoder, because, after the formulas have been stored in the storage unit 3, the rotation angle of the scale may be generated without using such elements.

Furthermore, the rotary encoder according to the present invention can be applied to a rotation mechanism of a variety of apparatuses.

By providing, to the rotation mechanism, a drive unit that can rotate together with a scale or a sensor unit and a controller that controls the drive unit on the basis of a rotation angle detected by the rotary encoder according to the present invention, the rotation angle can be controlled with a higher precision. For example, the rotary encoder according to the present invention can be applied to an industrial machinery, a robot arm, a precision machining apparatus, a semiconductor exposure apparatus, a semiconductor manufacturing apparatus, and the like. The rotary encoder can be also applied to a image-taking apparatus, a lens apparatus, an electrophotographic image forming apparatus, an inkjet image forming apparatus, and the like.

According to the present invention, provided is a rotary encoder that can correct an eccentric error without limitation on eccentricity and that allows a larger assembling error of a scale.

While the present invention has been described with reference to various exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.

This application claims the benefit of International Application No. PCT/JP2009/071063, filed Dec. 17, 2009, which is hereby incorporated by reference herein in its entirety.

REFERENCE SIGNS LIST

-   1 scale -   11 first track -   12 second track -   21 first sensor unit -   22 first sensor unit -   23 second sensor unit -   3 storage unit -   4 controller -   45 signal generator -   46 formula selector -   47 formula calculator -   48 output angle generator 

What is claimed is:
 1. A rotary encoder including a detection unit, and a scale that is rotatable relative to the detection unit, the scale having a pattern for detecting a rotation angle, wherein the detection unit includes two first detection units and a second detection unit, the two first detection units being disposed at positions that are symmetrical about a center of the rotation, each of the first detection units outputting an incremental signal having a plurality of periods for one rotation of the scale, and the second detection unit outputting an absolute signal corresponding to a rotation angle of the scale within one rotation of the scale, and wherein the rotary encoder detects a relative rotation angle of the scale based on phases of the two incremental signals and a value of the absolute signal, the phases of the two incremental signals being detected by the two first detection units, the rotary encoder comprising: a storage unit that stores a plurality of formulas for correcting errors of the incremental signals, the formulas being different from each other in accordance with the value of the absolute signal, and the errors being generated due to deviation of the center of the rotation from a center of the pattern; a calculation unit that calculates a corrected phase by performing an operation on the phases of the two incremental signals by using one of the formulas corresponding to the value of the absolute signal that is output from the second detection unit; and a generation unit that generates the rotation angle of the scale based on the corrected phase and the value of the absolute signal.
 2. The rotary encoder according to claim 1, wherein the plurality of formulas include an expression for determining either of the following conditions, φ₁≧φ₂, φ₁≦φ₂, |φ₁−φ₂|≧π, and |φ₁−φ₂|≦π, where φ₁ and φ₂ are the phases of the two incremental signals that are output from the two first detection units.
 3. The rotary encoder according to claim 1, further comprising: a count unit that counts periodicity of each of the two first detection units; a reset unit that resets values of the two count unit when the value of the absolute signal is zero; an accumulated phase calculation unit that calculates accumulated phases from positions at which the values have been reset based on the phases of the two the incremental signals that are output from the two first detection units and the values of the count unit; and a phase difference calculation unit that calculates a phase difference between the two accumulated phases, wherein the storage unit stores the plurality of formulas based on a relationship between the phase difference and the rotation angle of the scale.
 4. A rotation mechanism comprising: a drive unit that is rotatable together with the scale or the detection unit; and a control unit that controls driving of the drive unit based on the rotation angle that is generated by the rotary encoder according to claim
 1. 